package com.ecloud.common.base.result;

import java.util.ArrayList;
import java.util.List;

/**
 * 行数据构造器
 *
 * @author LiuGangQiang Create in 2021/08/09
 */
public class RowsBuilder {
    /**
     * 隐藏构造器
     *
     * @author LiuGangQiang Create in 2021/08/09
     */
    private RowsBuilder() {
    }

    /**
     * 通过记录数和数据创建多行数据对象
     *
     * @author LiuGangQiang Create in 2021/04/03
     * @param <T>   参数类型
     * @param total 数据总数
     * @param rows  数据条目
     * @return {@link Rows}
     */
    public static <T> Rows<T> build(long total, List<T> rows) {
        return new Rows<T>(total, rows);
    }

    /**
     * 构造一个空数据
     *
     * @author LiuGangQiang Create in 2021/04/23
     * @param <T> 参数类型
     * @return {@link Rows}
     */
    public static <T> Rows<T> build() {
        return new Rows<T>(0L, new ArrayList<>());
    }
}
